Skip to content

Live fragmented MP4 publishing support - #10

Merged
mondain merged 2 commits into
openmoq:mainfrom
TilsonJoji:main
May 11, 2026
Merged

Live fragmented MP4 publishing support#10
mondain merged 2 commits into
openmoq:mainfrom
TilsonJoji:main

Conversation

@TilsonJoji

Copy link
Copy Markdown
Collaborator

This PR adds live fragmented MP4 publishing support for the MoQ publisher. The publisher can now read an fMP4 stream from stdin, parse the initialization segment and subsequent media fragments incrementally, build a compatible catalog, and publish media fragments as MoQT objects without waiting for the full MP4 file to be available.

Motivation is to be able to publish live feed from Synamedia encoder via moqxr.The previous flow was better suited for static MP4 input. For live media publishing, the publisher needs to start as soon as the init segment is available and continue forwarding fragments as they arrive. This PR enables a live workflow suitable for encoder -> moqxr(MoQ publisher) -> moqx(relay)/playa(player) experiments.

Successful Tests - live feed:

  • FFmpeg -> moqxr(D16) -> moqx -> playa(D16).
  • Synamedia Encoder -> moqxr(D16) -> moqx -> playa(D16).

TilsonJoji and others added 2 commits May 11, 2026 16:03
…The publisher can now read an fMP4 stream from stdin, parse the initialization segment and subsequent media fragments incrementally, build a compatible catalog, and publish media fragments as MoQT objects without waiting for the full MP4 file to be available.
Live fragmented MP4 publishing support for the MoQ publisher. The publisher can now read an fMP4 stream from stdin, parse the initialization segment and subsequent media fragments incrementally, build a compatible catalog, and publish media fragments as MoQT objects without waiting for the full MP4 file to be available.

Motivation is to be able to publish live feed from Synamedia encoder via moqxr.The previous flow was better suited for static MP4 input. For live media publishing, the publisher needs to start as soon as the init segment is available and continue forwarding fragments as they arrive. This PR enables a live workflow suitable for encoder -> moqxr(MoQ publisher) -> moqx(relay)/playa(player) experiments.
@TilsonJoji TilsonJoji added the enhancement New feature or request label May 11, 2026
@TilsonJoji TilsonJoji self-assigned this May 11, 2026
@TilsonJoji
TilsonJoji marked this pull request as ready for review May 11, 2026 16:26

@mondain mondain left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

very nice, great job!

@mondain
mondain merged commit 9af904d into openmoq:main May 11, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants